﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net;
using System.Net.Mail;
using System.Data;
using System.Data.SqlClient;
using System.IO;

namespace WebApplication1.Account
{
    public partial class ForgetPassword : System.Web.UI.Page
    {
        sv_QuanLyNhaSach.AdapterClient xuly = new sv_QuanLyNhaSach.AdapterClient();
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        public string LayLaiMatKhau(int chieudai)
        {
            string chuoi = "0123456789abcdefghjkmmnopqrtuvwxyzABCDEFGHJKMMNOPQRSTUVWXYZ";
            Random rd = new Random();
            char[] chars = new char[chieudai];
            int dem = chuoi.Length;
            for (int i = 0; i < chieudai; i++)
            {
                chars[i] = chuoi[(int)((chuoi.Length) * rd.NextDouble())];
            }
            return new string(chars);
        }

        public void CapNhapMatKhau(string MaTKOL, string Matkhau)
        {
            DataSet ds = new DataSet();
            ds.ReadXml(new StringReader(xuly.selectqueryByText("update taikhoanonline set matkhau='"+ Matkhau +"' where MaTKOL='"+ MaTKOL +"'")));
        }

        public string NoidungMail()
        {
            DataSet ds = new DataSet();
            ds.ReadXml(new StringReader(xuly.selectqueryByText("Select MaTKOL from taikhoanonline where email= '"+ txt_email.Text +"'")));
            string noidung = "";
            string MatKhauMoi = "";
            string MaTKOL = "";
            if (ds.Tables.Count > 0)
            {
                noidung = "Đây là mail gửi đến từ website Nhà Sách Nhân Văn Online...";
                MatKhauMoi = LayLaiMatKhau(7);
                noidung += "\nMật khẩu mới của bạn là: " + MatKhauMoi;
                MaTKOL = ds.Tables[0].Rows[0]["MaTKOL"] + "";
                CapNhapMatKhau(MaTKOL, MatKhauMoi);
                noidung += "\nSau khi đăng nhập bạn nên đổi lại mật khẩu để tiện chi việc đăng nhập lần sau";
                noidung += "\nVui lòng không trả lời email này!";
            }
            return noidung;
        }

        protected void btn_xacnhan_Click(object sender, EventArgs e)
        {
            DataSet ds = new DataSet();
            ds.ReadXml(new StringReader(xuly.selectqueryByText("Select MaTKOL from taikhoanonline where email= '" + txt_email.Text + "'")));
            if (ds.Tables.Count > 0)
            {
                SmtpClient smtp = new SmtpClient("smtp.gmail.com");
                smtp.Credentials = new NetworkCredential("MyGroup5fr@gmail.com", "Aa123456^^");
                MailMessage mail = new MailMessage("MyGroup5fr@gmail.com", txt_email.Text, "Lấy lại mật khẩu từ trang web Nhà Sách Nhân Văn Online", NoidungMail());
                try
                {
                    smtp.EnableSsl = true;
                    smtp.Send(mail);
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Chúng tôi đã gửi mật khẩu cho bạn.\\n\\n Vui lòng check mail để lấy lại mật khẩu!');location.href='TrangChu.aspx';", true);
                }
                catch (Exception ex)
                {
                    Response.Write("Send failure: " + ex.ToString());
                }
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirectMe", "alert('Email của bạn không tồn tại!');", true);
            }
        }
    }
}